<?php
	require_once("Moduler/Registration/RegistrationHandler.php");
	require_once("Moduler/Login/LoginHandler.php");
	require_once("DBConnection.php");
	require_once("DBConfig.php");
	
	$test = new testAll;
	$test->doTest();

	class testAll{
		static function doTest(){
		
		$dbc = new \DBconfig;
		$db = new \DBConnection($dbc);
		$regh = new RegistrationHandler($db);
		$loginh = new LoginHandler($db);

			$regh->addUser('Anton Wårdell', '900421', 'svenne', 'hej');
			
			if ($regh->checkUsername('svenne')){
				echo 'Något gick fel när användare lades till';
				return false;
			}
			
			$regh->removeUser('svenne');
			
			if(!$regh->checkUsername('svenne')){
				echo 'lyckades inte ta bort användare';
				return false;
			}
			
			if(!$regh->checkUsername('Nånsomintefinns')){
				echo 'Funktionen Checkforuser returnerade true trots att användare inte finns';
				return false;
			}
			
			if(!$regh->checkPasswords('lösenord', 'lösenord')){
				echo 'Lösenorden stämmer men funktionen ballar ur';
				return false;
			}
			
			if($regh->checkPasswords('lösenordzzzzzz', 'lösenord')){
				echo 'Lösenorden stämmer inte men funktionen returnerar true:((';
				return false;
			}
			
			if(!$regh->checkBDate('900421')){
				echo 'Datumet stämmer men funktionen ballar ur';
				return false;
			}
			
			if($regh->checkBDate('9004212156')){
				echo 'Datumet stämmer inte men funktionen returnerar true:((';
				return false;
			}
			
			if(!$regh->checkUsernameChars('Antonuser')){
				echo 'Användarnamnet ska fungera men funktionen ballar ur';
				return false;
			}
			
			if($regh->checkUsernameChars('Anton$$$$')){
				echo 'Avändarnamnet ska inte vara giltigt funktionen returnerar true:((';
				return false;
			}
			
		}
	}

?>